// 统一页面跳转工具函数

/**
 * 跳转到指定页面
 * @param {string} url - 页面路径
 * @param {boolean} isTab - 是否为tab页面
 */
export function navigateTo(url, isTab = false) {
  if (isTab) {
    uni.switchTab({ url });
  } else {
    uni.navigateTo({ url });
  }
}

/**
 * 重定向到指定页面
 * @param {string} url - 页面路径
 */
export function redirectTo(url) {
  uni.redirectTo({ url });
}

/**
 * 跳转到首页
 */
export function goToHome() {
  uni.switchTab({ url: '/pages/home/home' });
}

/**
 * 跳转到登录页面
 */
export function goToLogin() {
  uni.redirectTo({ url: '/pages/login/login' });
}

/**
 * 跳转到个人资料页面
 */
export function goToProfile() {
  uni.switchTab({ url: '/pages/profile/profile' });
}

/**
 * 跳转到动态广场页面
 */
export function goToSquare() {
  uni.switchTab({ url: '/pages/square/square' });
}

/**
 * 跳转到积分历史页面
 */
export function goToPointsHistory() {
  uni.navigateTo({ url: '/pages/points/history' });
}

/**
 * 跳转到积分排行榜页面
 */
export function goToPointsRanking() {
  uni.navigateTo({ url: '/pages/points/ranking' });
}

/**
 * 跳转到我的动态页面
 */
export function goToMyPosts() {
  uni.navigateTo({ url: '/pages/my-posts/my-posts' });
}

/**
 * 跳转到头像编辑页面
 */
export function goToAvatarEditor() {
  uni.navigateTo({ url: '/pages/avatar/avatar' });
}

/**
 * 跳转到 WebView 页面
 * @param {string} url - HTML 页面路径
 * @param {string} title - 页面标题
 */
export function goToWebView(url = '/static/html/index.html', title = 'HTML 页面') {
  const encodedUrl = encodeURIComponent(url);
  const encodedTitle = encodeURIComponent(title);
  uni.navigateTo({ 
    url: `/pages/webview/index?url=${encodedUrl}&title=${encodedTitle}` 
  });
}

/**
 * 跳转到护照页面
 */
export function goToPassport() {
  uni.navigateTo({ url: '/pages/passport/passport' });
}

/**
 * 跳转到虚拟旅行页面
 */
export function goToTravel() {
  uni.navigateTo({ url: '/pages/travel/travel' });
}

export default {
  navigateTo,
  redirectTo,
  goToHome,
  goToLogin,
  goToProfile,
  goToSquare,
  goToPointsHistory,
  goToPointsRanking,
  goToMyPosts,
  goToAvatarEditor,
  goToWebView,
  goToPassport,
  goToTravel
};